
#[derive(Debug)]
struct Structure(i32);

#[derive(Debug)]
struct Deep(Structure);

#[derive(Debug)]
struct Person<'a>{
    name: &'a str,
    age: u8
}

pub fn main() {
    //{:?} for fmt::Display
    println!("{:?} months in a year.", 12);

    println!("{1:?} {0:?} is the {actor:?} name.", "Slater", "Christian", actor="actor's");

    println!("Now {:?} will print!", Structure(32));

    println!("Now {:?} will print!", Deep(Structure(7)));


    //{:#?} for fmt::Debug for pretty print
    let peter = Person{ name:"Peter", age:27 };
    println!("{:#?}, {1}, {2}", peter, peter.name, peter.age);
}

